package net.ericaro.neojavagen.interfaces ;
import net.ericaro.neojavagen.classes.TypedMethodDeclarator;
import net.ericaro.neojavagen.interfaces.InterfaceMemberDeclaration;
import net.ericaro.neojavagen.interfaces.AbstractMethodModifiers;
import net.ericaro.neojavagen.packages.JavadocComment;
import net.ericaro.neojavagen.classes.TypeParameters;
import net.ericaro.neojavagen.interfaces.Annotations;
import net.ericaro.neojavagen.classes.Throws ;

/**
* *<pre> AbstractMethodDeclaration :
    JavadocComment? Annotations? AbstractMethodModifiers? TypeParameters? TypedMethodDeclarator Throws? ;
</pre>
*/
public class AbstractMethodDeclaration  implements InterfaceMemberDeclaration {

JavadocComment javadoccomment;
Annotations annotations;
AbstractMethodModifiers abstractmethodmodifiers;
TypeParameters typeparameters;
TypedMethodDeclarator typedmethoddeclarator;
Throws athrows ;

public AbstractMethodDeclaration( JavadocComment javadoccomment, Annotations annotations, AbstractMethodModifiers abstractmethodmodifiers, TypeParameters typeparameters, TypedMethodDeclarator typedmethoddeclarator, Throws athrows ){
	this.javadoccomment = javadoccomment; this.annotations = annotations; this.abstractmethodmodifiers = abstractmethodmodifiers; this.typeparameters = typeparameters; this.typedmethoddeclarator = typedmethoddeclarator; this.athrows = athrows ;
	}public AbstractMethodDeclaration( TypedMethodDeclarator typedmethoddeclarator ){
this.typedmethoddeclarator = typedmethoddeclarator ;
}


public String toString(){
	StringBuilder stringbuilder = new StringBuilder();
	if (this.javadoccomment !=null ) stringbuilder.append( this.javadoccomment ).append(" ");
if (this.annotations !=null ) stringbuilder.append( this.annotations ).append(" ");
if (this.abstractmethodmodifiers !=null ) stringbuilder.append( this.abstractmethodmodifiers ).append(" ");
if (this.typeparameters !=null ) stringbuilder.append( this.typeparameters ).append(" ");
stringbuilder.append( this.typedmethoddeclarator ).append(" ");
if (this.athrows !=null ) stringbuilder.append( this.athrows ).append(" ");
stringbuilder.append( ";\n" ).append(" ") ;
	return stringbuilder.toString();
}

}
